#ifndef MAINWINDOW_H
#define MAINWINDOW_H


#include <QtWidgets/QMainWindow>
#include <QPlainTextEdit>
#include <QPushButton>
#include <QComboBox>
#include <QLabel>
#include <QTimer>
#include <QMessageBox>
#include <QString>
#include <QSerialPortInfo>
#include <QSerialPort>
#include <QLatin1Char>
#include <qdebug.h>
#include <qvector.h>
// #include <QBluetoothSocket>
// #include <QBluetoothDeviceDiscoveryAgent>
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

    QSerialPort my_Serial;

private slots:
    void on_Button_refresh_clicked();

    void on_Button_link_serial_clicked();

    void on_Button_dis_serial_clicked();

    void on_Button_clear_rx_clicked();

    void message_Recevied();

    void on_Button_serial_send_clicked();

    void on_Button_send_pose_clicked();

    void on_Button_clear_pose_clicked();

    void on_Button_grip_pose_clicked();

    void on_Button_init_pose_clicked();

    void on_Button_send_angles_clicked();

    void LCD_angles_show();

    void on_Button_init_angles_clicked();

    void on_Button_re_nowangles_clicked();

    void on_Button_restore_angles_clicked();

    void on_checkBox_timer_stateChanged(int arg1);

    void timer_send_data();

    void UpdateSliderValue(QSlider* slider, int value);
private:
    Ui::MainWindow *ui;
    int rx_num=0,tx_num=0;
    QTimer *timer; // 定时器
    char rx_mode=0,tx_mode=0;
    char pose_mode=0,angle_mode=0;
    int angles_init[6];
    int now_angles[6];
    QByteArray m_rxBuffer;  // 用于拼接接收数据的缓冲区
};
#endif // MAINWINDOW_H
